home *** CD-ROM | disk | FTP | other *** search
- 1 REM *************************
- 2 REM * APPLESOFT STAR ATTACK *
- 3 REM * BY MIKE HARVEY *
- 4 REM * COPYRIGHT (C) 1983 *
- 5 REM * BY MICROSPARC, INC. *
- 6 REM * CONCORD, MA 01742 *
- 7 REM *************************
- 10 ON PEEK(103) = 1 AND PEEK(104) = 16 GOTO 15: PRINT CHR$(4);"BLOAD STAR.AL": PRINT CHR$(4);"BLOAD STAR.SHAPES": PRINT CHR$(4);"BLOAD HI-RES": POKE 103,1: POKE 104,16: POKE 4096,0: PRINT CHR$(4)"RUN STAR ATTACK"
- 15 GOSUB 2000: POKE 17227,0
- 16 POKE 17226,0
- 17 TEXT
- 20 CALL 17434
- 21 GOSUB 2050: GOTO 26
- 24 CALL 17563
- 26 X = PEEK(17226)
- 27 IF X = 1 THEN GOSUB 100: GOTO 35
- 28 IF X = 2 THEN GOSUB 200: GOTO 35
- 29 IF X = 3 THEN GOSUB 300: GOTO 35
- 30 IF X = 4 THEN GOSUB 400: GOTO 35
- 31 IF X = 5 THEN GOSUB 500: GOTO 35
- 32 IF X = 6 THEN GOSUB 600: GOTO 35
- 33 IF X = 7 THEN GOSUB 700: GOTO 35
- 35 S = PEEK(17227): IF S < >T THEN GOSUB 800
- 36 T = S
- 40 N = N -1: VTAB 21: HTAB 16: PRINT N
- 45 IF N = 1000 OR N = 100 THEN GOSUB 5000
- 50 IF S >300 OR N = 0 THEN 3000
- 55 GOTO 24
- 100 POKE 17226,0: VTAB 23: HTAB 10: PRINT A$;: HTAB 37: PRINT "+50":X = 0
- 105 SC = SC +50: VTAB 22: HTAB 36: CALL -868: PRINT SC:A = A +1: RETURN
- 200 POKE 17226,0: VTAB 23: HTAB 10: PRINT B$;: HTAB 37: PRINT "+40":X = 0
- 205 SC = SC +40: VTAB 22: HTAB 36: CALL -868: PRINT SC:B = B +1: RETURN
- 300 POKE 17226,0: VTAB 23: HTAB 10: PRINT C$;: HTAB 37: PRINT "-50":X = 0
- 305 SC = SC -50: VTAB 22: HTAB 36: CALL -868: PRINT SC:C = C +1: RETURN
- 400 POKE 17226,0: VTAB 23: HTAB 10: PRINT D$;: HTAB 37: PRINT "+30":X = 0
- 405 SC = SC +30: VTAB 22: HTAB 36: CALL -868: PRINT SC:D = D +1: RETURN
- 500 POKE 17226,0: VTAB 23: HTAB 10: PRINT E$;: HTAB 37: PRINT "+20":X = 0
- 505 SC = SC +20: VTAB 22: HTAB 36: CALL -868: PRINT SC:E = E +1: RETURN
- 600 POKE 17226,0: VTAB 23: HTAB 10: PRINT F$;: HTAB 37: PRINT "-40":X = 0
- 605 SC = SC -40: VTAB 22: HTAB 36: CALL -868: PRINT SC:F = F +1: RETURN
- 700 POKE 17226,0: VTAB 23: HTAB 10: PRINT G$;: HTAB 37: PRINT "-20":X = 0
- 705 SC = SC -20: VTAB 22: HTAB 36: CALL -868: PRINT SC:G = G +1: RETURN
- 800 VTAB 21: HTAB 35: CALL -868: PRINT S: RETURN
- 1000 END
- 2000 DIM A$(20),B$(20),C$(20),D$(20),E$(20),F$(20),G$(20),X$(2),M$(40),BB$(4)
- 2005 BB$ = " ":A$ = " TIE FIGHTER ":B$ = " KLINGON CRUISER":C$ = " HOSPITAL SHIP "
- 2010 D$ = " KLINGON FIGHTER":E$ = " TIE SUPPLY SHIP":F$ = " TWA FREIGHTER "
- 2015 G$ = " COMM SATELLITE ": CALL -936:N = 4000: RETURN
- 2050 VTAB 21: PRINT "TIME LEFT..";: HTAB 23: PRINT "SHOTS USED.."
- 2055 VTAB 22: PRINT "PREV HIGH SCORE=";HS;: HTAB 26: PRINT "SCORE.."
- 2065 VTAB 23: PRINT "LAST HIT=";: HTAB 27: PRINT "SCORING.."
- 2070 POKE 812,255
- 2072 FOR I = 1 TO 100:XX = RND(1) *250:YY = RND(1) *120
- 2074 POKE 800,XX: POKE 802,YY: CALL 3780: NEXT I
- 2078 POKE 800,0: POKE 802,0: CALL 3780
- 2080 POKE 800,255: POKE 802,0: CALL 3786
- 2082 POKE 800,255: POKE 802,159: CALL 3786
- 2084 POKE 800,0: POKE 802,159: CALL 3786
- 2086 POKE 800,0: POKE 802,0: CALL 3786
- 2088 POKE 800,0: POKE 802,130: CALL 3780
- 2090 POKE 800,124: POKE 802,154: CALL 3786
- 2092 POKE 800,136: POKE 802,154: CALL 3786
- 2094 POKE 800,255: POKE 802,130: CALL 3786
- 2096 POKE 800,0: POKE 802,140: CALL 3780
- 2098 POKE 800,124: POKE 802,156: CALL 3786
- 2100 POKE 800,136: POKE 802,156: CALL 3786
- 2102 POKE 800,255: POKE 802,140: CALL 3786
- 2200 RETURN
- 3000 TEXT : CALL -936
- 3005 IF SC >HS THEN GOSUB 3500
- 3006 GOSUB 4000
- 3008 VTAB 21: INPUT "ANOTHER MISSION? HIT RETURN";X$: GOSUB 2015
- 3015 SC = 0: POKE 17227,0: REM RESET SCORE AND NUMBER OF SHOTS
- 3020 A = 0:B = 0:C = 0:D = 0:E = 0:F = 0:G = 0: GOTO 20
- 3500 PRINT "YOUR SCORE OF ";SC;" HAS BEATEN THE": PRINT "PREVIOUS HIGH SCORE OF..";HS
- 3505 PRINT "CONGRATULATIONS!"
- 3510 HS = SC: RETURN
- 4000 VTAB 6: HTAB 5: PRINT "YOU SHOT DOWN....."
- 4005 VTAB 7: HTAB 16: PRINT A;"..";A$
- 4006 VTAB 8: HTAB 16: PRINT B;"..";B$
- 4008 VTAB 9: HTAB 16: PRINT C;"..";C$
- 4010 VTAB 10: HTAB 16: PRINT D;"..";D$
- 4012 VTAB 11: HTAB 16: PRINT E;"..";E$
- 4014 VTAB 12: HTAB 16: PRINT F;"..";F$
- 4016 VTAB 13: HTAB 16: PRINT G;"..";G$
- 4020 IF SC <100 THEN 4100
- 4021 IF SC <200 THEN 4120
- 4022 IF SC <300 THEN 4130
- 4023 IF SC <500 THEN 4140
- 4024 IF SC <650 THEN 4150
- 4025 IF SC <750 THEN 4160
- 4026 IF SC <850 THEN 4170
- 4027 IF SC <1000 THEN 4180
- 4040 GOTO 4190
- 4100 M$ = "LOUSY": GOTO 4500
- 4120 M$ = "POOR": GOTO 4500
- 4130 M$ = "FAIR": GOTO 4500
- 4140 M$ = "NOT BAD..APPRENTICE RATING"
- 4142 GOTO 4500
- 4150 M$ = "GOOD..PROMOTED TO EXEC OFFICER."
- 4152 GOTO 4500
- 4160 M$ = "VERY GOOD..PROMOTED TO 1ST OFFICER"
- 4162 GOTO 4500
- 4170 M$ = "EXCELLENT! PROMOTED TO CAPTAIN!"
- 4172 GOTO 4500
- 4180 M$ = "OUTSTANDING! PROMOTED TO REAR ADMIRAL"
- 4182 GOTO 4500
- 4190 M$ = "SPECTACULAR! PROMOTED TO FLEET ADMIRAL"
- 4192 GOTO 4500
- 4500 VTAB 18: PRINT "YOUR SCORE OF.."SC" WAS RATED:"
- 4505 VTAB 19: HTAB 4: PRINT M$: RETURN
- 5000 VTAB 21: HTAB 16: PRINT BB$
- 5005 RETURN